import {
  message
} from 'ant-design-vue'
import axios from './http'
import { getList } from '../util/storage/getlistbycache';

// 登录
export function login(data) {
  return axios({
    url: '/api/user/login',
    // url: '/api/user/isExist',
    method: 'post',
    data
  })
}

// 注册
export function register(data) {
  return axios({
    // url: '/api/user/register',
    url: '/api/user/emailreg',
    method: 'post',
    data
  })
}

// 退出
export function logout() {
  return axios({
    url: '/api/user/logout',
    method: 'post',
  })
}

// 修改用户信息
export function updateUserInfo(data) {
  return axios({
    url: '/api/user/updateuser',
    method: 'post',
    data
  })
}

// 修改密码
export function updatePassword(data) {
  return axios({
    url: '/api/user/changepassword',
    method: 'post',
    data
  })
}

/**
 * @params { email,validCode,newPassword }
 * @description 修改密码
 **/ 
export function updatePasswordByEmail(data) {
  return axios({
    url: '/api/user/resetpwdbyemail',
    method: 'post',
    data
  })
}

// 修改用户信息
// export function updateUserinfo(data) {
//   return axios({
//     url: '/api/user/changeInfo',
//     method: 'patch',
//     data
//   })
// }

// 获取用户信息
export function getSetting() {
  return axios({
    url: '/api/setting',
    method: 'get',
  })
}

// 查看账户是否存在
export function isExist(data) {
  return axios({
    url: '/api/user/isExist',
    method: 'post',
    data
  })
}

// 发送验证码
export function sendVaildCode(data) {
  return axios({
    url: '/api/user/sendValidCode',
    method: 'post',
    data
  })
}

// 验证验证码是否正确
export function checkVaildCode(data) {
  return axios({
    url: '/api/user/checkValidCode',
    method: 'post',
    data
  })
}

// 更新token
export function refreshToken(data) {
  return axios({
    url: '/api/user/refreshjwttoken',
    method: 'post',
    data
  })
}

// 获取已注册信息
export async function getRegisteredUser(data) {
  return await getList(`/api/user/list?roleFlag=${data.roleFlag}`)
  // return axios({
  //   url: '/api/user/list',
  //   method: 'post',
  //   data
  // })
}

// 获取班级信息/根据majorID（专业ID）获取班级列表数据
export async function getClassList(data) {
  return await getList('/api/teacher/classlist', data)
  // return axios({
  //   url: '/api/teacher/classlist',
  //   method: 'get',
  // })
}

// 获取专业列表/根据deptID（学院ID）获取专业列表数据
export async function getMajorList(data) {
  return await getList('/api/basedata/majorlist', data)
}

// 获取二级学院列表
export async function getDeptList() {
  return await getList('/api/basedata/deptlist')
}

// 创建二级学院
export async function createDept(data) {
  return axios({
    url: '/api/basedata/createdept',
    method: 'post',
    data
  })
}

// 创建专业
export async function createMajor(data) {
  return axios({
    url: '/api/basedata/createmajor',
    method: 'post',
    data
  })
}

// 创建班级
export async function createClass(data) {
  return axios({
    url: '/api/basedata/createclass',
    method: 'post',
    data
  })
}